package com.yupi.yuoj.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yupi.yuoj.model.dto.question.QuestionQueryRequest;
import com.yupi.yuoj.model.dto.questionsubmit.QuestionSubmitAddRequest;
import com.yupi.yuoj.model.entity.QuestionSubmit;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yupi.yuoj.model.entity.User;
import com.yupi.yuoj.model.vo.QuestionLanguageStatus;
import com.yupi.yuoj.model.vo.QuestionVO;

import java.util.List;

/**
* @author 李胜
* @description 针对表【question_submit(题目提交)】的数据库操作Service
* @createDate 2025-08-27 16:19:26
*/
public interface QuestionSubmitService extends IService<QuestionSubmit> {

    /**
     * 提交题目
     * @param questionSubmitAddRequest
     * @param loginUser
     * @return
     */
    long doQuestionSubmit(QuestionSubmitAddRequest questionSubmitAddRequest, User loginUser);

    /**
     * 通过的题目+尝试过的题目
     * @param userId
     * @return
     */
    long questionDoStatusALL(Long userId);

    /**
     * 总过题数
     * @param userId
     * @return
     */
    long questionDoStatusAC(Long userId);

    /**
     * 统计不同语言的过题数
     * @param userId
     * @return
     */
    List<QuestionLanguageStatus> questionLanguageStatus(Long userId);
}
